<?php
namespace Sisesporte\Repository;

use Doctrine\ORM\EntityRepository;

class VagasTurmaRepository extends EntityRepository 
{
    //COLOCADO 0 P FAZER TESTE, NO RETORNO DE VAGAS PREENCHIDAS
    public function getVagasModalidade($entityManager = NULL, $sqTurma = NULL) 
    {   
        $sql = "SELECT t.coTurma,
                       t.inSemestre,
                       t.nuAno,
                       hi.noHorario as hrInicio,
                       hf.noHorario as hrTermino,
                       td.deDia as diasSemana,
                       fe.nuIdadeInicial,
                       fe.nuIdadeFinal,
                       t.nuVaga as vagasDisponiveis,
                       '0' as vagasPreenchidas
                  FROM Sisesporte\Entity\Modalidade as m
            INNER JOIN Sisesporte\Entity\ModalidadeProfessor as mp WITH (m.sqModalidade = mp.sqModalidade)
            INNER JOIN Sisesporte\Entity\Turma as t WITH (mp.sqModalidadeProfessor = t.sqModalidadeProfessor)
            INNER JOIN Sisesporte\Entity\HorarioFuncionamento as hi WITH (t.sqHorarioInicio = hi.sqHorario)
            INNER JOIN Sisesporte\Entity\HorarioFuncionamento as hf WITH (t.sqHorarioTermino = hf.sqHorario)
            INNER JOIN Sisesporte\Entity\TurmaDia as td WITH (t.sqTurmaDia = td.sqTurmaDia)
            INNER JOIN Sisesporte\Entity\TipoFaixaEtaria as fe WITH (t.sqTipoFaixaEtaria = fe.sqTipoFaixaEtaria)
                 WHERE t.sqTurma = $sqTurma
                ";
                   
        $query = $entityManager->createQuery("$sql");
        return $users = $query->getResult();

/*
        $query = $entityManager->createQueryBuilder()
                               ->select('m')
                               //->from('Sisesporte\Entity\VagasModalidade', 'm')
                               ->from('Sisesporte\Entity\Modalidade', 'm')
                               ->getQuery();
        
        return $results = $query->getResult();
 */
    }
    
}
